package com.x.Part6_内部类;

/**
 * ClassName: OuterClassTest
 * Package: IntelliJ IDEA
 * Description:
 * Written by HanXu
 * Create 2024.03.07 2:43
 */
public class OuterClassTest {

    //开发中场景
    //getInstance方法返回的是一个实现了Comparable接口的实例对象
    public Comparable getInstance() {

        //方式一：返回有名实现类的匿名对象

        //一个内部类，这个类是Comparable接口的实现类
        class MyComparable implements Comparable {

            //实现类（MyComparable）要重写的Comparable接口的所的抽象方法，这里只有compareTo()方法
            @Override
            public int compareTo(Object o) {
                return 0;
            }
        }

        //返回一个“new出来的、实现了Comparable接口的实例对象”
        return new MyComparable();


        /*
        //方式二：返回匿名实现类的匿名对象
        return new Comparable(){
            @Override
            public int compareTo(Object o) {
                return 0;
            }
        };
        */

    }
}
